home *** CD-ROM | disk | FTP | other *** search
- TABLE OF CONTENTS
-
- cd32mpeg.device/CMD_FLUSH
- cd32mpeg.device/CMD_RESET
- cd32mpeg.device/CMD_WRITE
- cd32mpeg.device/GetSCR
- cd32mpeg.device/MPEGCMD_GETDEVINFO
- cd32mpeg.device/MPEGCMD_GETVIDEOPARAMS
- cd32mpeg.device/MPEGCMD_PAUSE
- cd32mpeg.device/MPEGCMD_PLAY
- cd32mpeg.device/MPEGCMD_PLAYLSN
- cd32mpeg.device/MPEGCMD_READFRAMEYUV
- cd32mpeg.device/MPEGCMD_SEARCH
- cd32mpeg.device/MPEGCMD_SEEKLSN
- cd32mpeg.device/MPEGCMD_SETAUDIOPARAMS
- cd32mpeg.device/MPEGCMD_SETBORDER
- cd32mpeg.device/MPEGCMD_SETVIDEOPARAMS
- cd32mpeg.device/MPEGCMD_SETWINDOW
- cd32mpeg.device/MPEGCMD_SINGLESTEP
- cd32mpeg.device/MPEGCMD_SLOWMOTION
- cd32mpeg.device/SetSCR
- cd32mpeg.device/CMD_FLUSH cd32mpeg.device/CMD_FLUSH
-
- NAME
- CMD_FLUSH -- cancel all pending CMD_WRITE requests
-
- FUNCION
- CMD_FLUSH aborts all CMD_WRITE requests in progress or queued.
- This call will also flush any decoder buffers. However, the current
- play state will not be changed. For the best visual results, the
- currently executing MPEGCMD_PLAY command should be aborted, or the
- device should be in a paused state. Otherwise, undesirable video
- or audio artifacts may occur due to decoder underdlow.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to reset
- io_Command - command number for CMD_FLUSH
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- None
-
- cd32mpeg.device/CMD_RESET cd32mpeg.device/CMD_RESET
-
- NAME
- CMD_RESET -- restore device to a known state
-
- FUNCTION
- CMD_RESET reset the hardware and/or software of the mpeg device
- driver to a known state, cancels all pending I/O requests and resets
- all error conditions.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to reset
- io_Command - command number for CMD_RESET
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- None
-
- cd32mpeg.device/CMD_WRITE cd32mpeg.device/CMD_WRITE
-
- NAME
- CMD_WRITE -- normal I/O entry point
-
- FUNCTION
- CMD_WRITE is used to send data to the MPEG device driver when playing
- back an MPEG stream using the MPEGCMD_PLAY command.
-
- Depending on the capabilities of the MPEG device driver, the data
- may be packs from an ISO System stream, or may be raw video and/or
- audio streams.
-
- The amount of data the needs to be written to the device depends on
- the playback mode being used. For normal rate playback, it would be
- a good idea to keep a large amount of data queued up in order to
- avoid video or audio glitches.
-
- When sending MPEG system streams to the device, each block of data
- sent by the CMD_WRITE command MUST correspond to exactly one pack
- of data.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to queue data for
- io_Command - command number for CMD_WRITE
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a data buffer that contains valid data
- io_Length - Amount of data pointed to by io_Data.
- iomr_PTSxxxx - A timestamp associated with this data segment. This
- is typically the PTS value if this data segment was
- part of a system stream.
- iomr_MPEGFlags - Status information regarding this data:
- MPEGFLAGF_VALIDCLK - io_PTSxxxx contains a valid
- timestamp associated with
- this data.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occurred.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- For efficient operation, it will be best to keep a certain minimum
- amount of data queued up at any given time, otherwise gaps or glitches
- may appear in the audio and/or video output. Approximately 64k for
- video and 16k for audio is a good starting point.
-
- cd32mpeg.device/GetSCR cd32mpeg.device/GetSCR
-
- NAME
- GetSCR -- Get the current System Clock Reference value.
-
- SYNOPSIS
- clockValue = GetSCR()
- D0
-
- ULONG GetSCR(struct Unit *unit);
-
- FUNCTION
- This call is used to get the MPEG System Clock Reference from a MPEG
- device driver. This is usually used for synchronizing one device
- driver to another.
-
- INPUTS
- unit - The value in the io_Unit field of the IO request
- returned by OpenDevice.
-
- OUTPUTS
- clockValue - The lower 32 bits of the SCR. The MPEG clock is
- specified to be 33 bits, but we only use 32 bits of
- that clock.
-
- cd32mpeg.device/MPEGCMD_GETDEVINFO cd32mpeg.device/MPEGCMD_GETDEVINFO
-
- NAME
- MPEGCMD_GETDEVINFO -- Determine the capabilities of an MPEG device
-
- FUNCTION
- MPEGCMD_GETDEVINFO is used to determine what types of operations a
- MPEG device is capable of, as well as getting a short description of
- that board.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to begin playback on
- io_Command - command number for CMD_GETDEVINFO
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a MPEGDevInfo structure to be filled in
- by the device.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- Best results will be acheived if you queue up some data before
- sending this command. See cd32mpeg.device/CMD_WRITE for more details.
-
- cd32mpeg.device/MPEGCMD_GETVIDEOPARAMS cd32mpeg.device/MPEGCMD_GETVIDEOPARAMS
-
- NAME
- MPEGCMD_GETVIDEOPARAMS -- Get settings for video playback/recording
-
- FUNCTION
- MPEGCMD_GETVIDEOPARAMS may be used to determine what the current
- settings are for playback and/or recording.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to get parameters from
- io_Command - command number for MPEGCMD_GETVIDEOPARAMS
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a MPEGVideoParams structure.
- io_Length - Sizeof(struct MPEGVideoParams)
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_PAUSE cd32mpeg.device/MPEGCMD_PAUSE
-
- NAME
- MPEGCMD_PAUSE -- Set the pause mode of the device
-
- FUNCTION
- MPEGCMD_PAUSE is used to temporarily suspend the playback or recording
- process of an MPEG stream, the intention being to resume playback at
- some later time. All state information as well as any unused buffers
- will be maintained by the device driver. The last displayed video
- frame will remain on the screen, and any audio output will be
- suspended.
-
- To enable pause, io_Arg1 should be set to a non-zero value. To
- resume normal/slow motion playback, io_Arg1 should be cleared.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to begin playback on
- io_Command - command number for MPEGCMD_PLAY
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- iomr_StreamType - Set to one of MPEGSTREAM_VIDEO, MPEGSTREAM_AUDIO or
- MPEGSTREAM_SYSTEM depending on the stream type.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_PLAY cd32mpeg.device/MPEGCMD_PLAY
-
- NAME
- MPEGCMD_PLAY -- Start decoding a MPEG stream
-
- FUNCTION
- MPEGCMD_PLAY tells the MPEG device driver to begin standard rate MPEG
- playback.
-
- The MPEG stream data must be supplied via the CMD_WRITE device
- command. If you are playing back MPEG from a CD-ROM, you may wish to
- use the MPEGCMD_PLAYLSN command.
-
- This command currently will run forever until it is aborted. Future
- versions of the device driver may automatically detect the end of an
- MPEG stream.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to begin playback on
- io_Command - command number for MPEGCMD_PLAY
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- iomr_StreamType - Set to one of MPEGSTREAM_VIDEO, MPEGSTREAM_AUDIO
- or MPEGSTREAM_SYSTEM depending on the stream type.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- Best results will be acheived if you queue up some data before
- sending this command. See cd32mpeg.device/CMD_WRITE for more details.
-
- cd32mpeg.device/MPEGCMD_PLAYLSN cd32mpeg.device/MPEGCMD_PLAYLSN
-
- NAME
- MPEGCMD_PLAYLSN -- Start playing a MPEG stream from CD.
-
- FUNCTION
- MPEGCMD_PLAYLSN tells the MPEG device driver to begin standard rate
- MPEG playback from CD using cd.device.
-
- The command will not return until it has played io_Length number of
- sectors or either "end" of the stream is reached. Play may also be
- aborted using AbortIO().
-
- Due to the nature of MPEG video, you MUST supply the position of
- the start of the MPEG stream you are playing in iomr_Arg2. This is
- because the current decoder must read the MPEG Video Sequence
- Header to dertmine parameters such as picture size, frame rate, etc.
- Once this has been done, the device will seek to the position given
- in iomr_Offset.
-
- If the current Scan speed setting is less than zero, then the device
- will start scanning from the end of the sequence once it has located
- the sequence header.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to begin playback on
- io_Command - command number for MPEGCMD_PLAY
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- iomr_StreamType - Set to one of MPEGSTREAM_VIDEO, MPEGSTREAM_AUDIO
- or MPEGSTREAM_SYSTEM depending on the stream type.
- iomr_Data - unused.
- iomr_Offset - Logical sector number to start playback at.
- iomr_Length - Number of sectors to play
- iomr_Arg1 - Sector size to use with cd.device
- iomr_Arg2 - The real beginning of the stream on the disk.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_READFRAMEYUV cd32mpeg.device/MPEGCMD_READFRAMEYUV
-
- NAME
- MPEGCMD_READFRAMEYUV -- Read a single video frame in YUV format
-
- FUNCTION
- MPEGCMD_READFRAMEYUV may be used to read out the currently displayed
- video frame. The data is supplied in LCrCb format according to MPEG
- specifications.
-
- The io_Data field of the IO request should point to a
- MPEGFrameStore structure filled in as follows:
-
- mfs_Width - The width of the video stream
- mfs_Height - The height of the video stream
- mfs_Luma - Pointer to an array of UBYTE's to store the Luminance
- information for the current frame. Must be at least
- mfs_Width*mfs_Height bytes in size.
- mfs_Cr - Pointer to an array of UBYTE's to store the Cr Chroma
- information for the current frame. Must be at least
- mfs_Width*mfs_Height/4 bytes in size.
- mfs_Cb - Pointer to an array of UBYTE's to store the Cb Chroma
- information for the current frame. Must be at least
- mfs_Width*mfs_Height/4 bytes in size.
-
- Note that the Cr and Cb components of an MPEG frame have half the
- horizontal and vertical resolution of the Luminance data.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to set parameters for
- io_Command - command number for MPEGCMD_SETAUDIOPARAMS
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a MPEGFrameStore structure.
- io_Length - Sizeof(struct MPEGFrameStore)
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- Not all devices can support all features listed in the include files,
- so please use the CMD_GETDEVINFO command to determine what the board
- is actually capable of doing.
-
- cd32mpeg.device/MPEGCMD_SEARCH cd32mpeg.device/MPEGCMD_SEARCH
-
- NAME
- MPEGCMD_SEARCH -- Set forward or reverse search mode and/or search
- for a video I-frame.
-
- FUNCTION
- MPEGCMD_SEARCH is used to either set the forward or reverse search
- mode, or to do a one-shot search for a video I-frame.
-
- The iomr_Arg1 field of the IO request should be set to a non-zero
- value to enable search mode. If you are playing an MPEG stream
- using the MPEGCMD_PLAYLSN command, iomr_Arg1 should be set to the
- number of sectors to skip after each I-frame is found. This value
- may be positive or negative. If you are using the MPEGCMD_PLAY
- command, this value should be a 1.
-
- If you would like the device to search for the next I-frame and then
- enter pause mode, you may set the MPEGF_ONESHOT flag in the
- iomr_MPEGFlags field of the IO request structure. In this case, the
- IO request will not come back until the frame has been found and the
- device has entered the paused state.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to step
- io_Command - command number for MPEGCMD_SEARCH
- iomr_StreamType - Set to MPEGSTREAM_SYSTEM or MPEGSTREAM_VIDEO.
- io_Flags - flags, must be cleared if not used:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_SEEKLSN cd32mpeg.device/MPEGCMD_SEEKLSN
-
- NAME
- MPEGCMD_PLAY -- Seek to an arbitrary position with an MPEG stream.
-
- FUNCTION
- MPEGCMD_SEEKLSN tells the MPEG device driver to seek to an arbitrary
- position withing the stream when playing from CD.
-
- This command may only be used while there is a currently executing
- MPEGCMD_PLAYLSN command. Also, the fields of the IOMPEGReq structure
- must be set up exactly as if you were issuing the MPEGCMD_SEEKLSN
- command.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to begin playback on
- io_Command - command number for MPEGCMD_PLAY
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- iomr_StreamType - Set to one of MPEGSTREAM_VIDEO, MPEGSTREAM_AUDIO
- or MPEGSTREAM_SYSTEM depending on the stream type.
- iomr_Data - unused.
- iomr_Offset - Logical sector number to seek to.
- iomr_Length - Number of sectors to play
- iomr_Arg1 - Sector size to use with cd.device
- iomr_Arg2 - The real beginning of the stream on the disk.
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_SETAUDIOPARAMS cd32mpeg.device/MPEGCMD_SETAUDIOPARAMS
-
- NAME
- MPEGCMD_SETAUDIOPARAMS -- Set parameters for playback/recording
-
- FUNCTION
- MPEGCMD_SETPARAMS allows you to set such things as DAC attenuation,
- sample rage, target bitrate for decoding, etc.
-
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to set parameters for
- io_Command - command number for MPEGCMD_SETAUDIOPARAMS
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a MPEGAudioParams structure.
- io_Length - Sizeof(struct MPEGAudioParams)
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- Not all devices can support all features listed in the include files,
- so please use the CMD_GETDEVINFO command to determine what the board
- is actually capable of doing.
-
- cd32mpeg.device/MPEGCMD_SETBORDER cd32mpeg.device/MPEGCMD_SETBORDER
-
- NAME
- MPEGCMD_SETBORDER -- Set display position and border color
-
- FUNCTION
- MPEGCMD_SETBORDER is used to set the display position and border color
- for the decoded video stream.
-
- The io_Data field of the IO request must point to a MPEGBorderParams
- structure. That structure should be set up as follows:
-
- mbp_LeftBorder - Offset from left of display (Hi-Res pixels)
- mbp_TopBorder - Offset from top of display (NI scanlines)
- mbp_BorderRed - 8-bit red value for the border color
- mbp_BorderGreen - 8-bit green value for the border color
- mbp_BorderBlue - 8-bit blue value for the border color
-
- Values of 0 for mbp_LeftBorder and/or mbp_TopBorder mean that the
- video should be centered horizontally and/or vertically centered
- on the display.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to step
- io_Command - command number for MPEGCMD_SETBORDER
- io_Data - pointer to a MPEGBorderParams structure.
- io_Length - sizeof(struct MPEGWindowParams)
- io_Flags - flags, must be cleared if not used:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_SETVIDEOPARAMS cd32mpeg.device/MPEGCMD_SETVIDEOPARAMS
-
- NAME
- MPEGCMD_SETVIDEOPARAMS -- Set parameters for playback/recording
-
- FUNCTION
- MPEGCMD_SETVIDEOPARAMS allows you to set such things as picture size,
- display type (NTSC/PAL), etc.
-
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to set parameters for
- io_Command - command number for MPEGCMD_SETVIDEOPARAMS
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
- io_Data - Pointer to a MPEGVideoParams structure.
- io_Length - Sizeof(struct MPEGVideoParams)
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- NOTES
- Not all devices can support all features listed in the include files,
- so please use the MPEGCMD_GETDEVINFO command to determine what the
- device is actually capable of doing.
-
- The mvp_DisplayType parameter will be ignored during normal playback.
- If you need to explicitly set what type of screen the MPEG will be
- displayed on, you must set it before playback begins.
-
- cd32mpeg.device/MPEGCMD_SETWINDOW cd32mpeg.device/MPEGCMD_SETWINDOW
-
- NAME
- MPEGCMD_SETWINDOW -- Set portion of MPEG video to display
-
- FUNCTION
- MPEGCMD_SETWINDOW is used to set the portion of a MPEG video stream
- that will be displayed. The io_Data parameter must point to a
- MPEGWindowParams structure that contains offset/size information.
-
- The fields in the MPEGWindowParams structure are used as follows:
-
- mwp_XOffset - X Offset into the decoded picture for display start
- mwp_YOffset - Y Offset into the decoded picture for display start
- mwp_Width - How wide the displayed portion should be
- mwp_Height - How high the displayed portion should be
-
- mwp_XOffset and mwp_Width are specified in Amiga Hi-Res pixels.
- mwp_YOffset and mwp_Height are specified in non-interlaced scan
- lines.
-
- Note: The CL450 is limited to positioning the decode window on
- lo-res pixel boundaries, so mwp_XOffset will be scaled down by
- two.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to step
- io_Command - command number for MPEGCMD_SETWINDOW
- io_Data - pointer to a MPEGWindowParams structure.
- io_Length - sizeof(struct MPEGWindowParams)
- io_Flags - flags, must be cleared if not used:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_SINGLESTEP cd32mpeg.device/MPEGCMD_SINGLESTEP
-
- NAME
- MPEGCMD_STEP -- Step one video frame
-
- FUNCTION
- MPEGCMD_STEP may be used with mpeg device drivers that support it to
- single step through successive frames of an MPEG movie. This command
- will cause the device to enable pause mode if it wasn't already.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied from
- I/O block set by) OpenDevice function
- io_Unit - unit number to step
- io_Command - command number for CMD_STEP
- io_Flags - flags, must be cleared if not use:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/MPEGCMD_SLOWMOTION cd32mpeg.device/MPEGCMD_SLOWMOTION
-
- NAME
- MPEGCMD_SLOWMOTION -- Set slow motion playback mode.
-
- FUNCTION
- MPEGCMD_SLOWMOTION is used to set or clear slow motion playbakc.
-
- For this command, iomr_Arg1 is used to set the slow-motion frame
- rate. The display framerate will be equal to (stream frame rate/
- iomr_Arg1). So a value of 2 would play the stream at half speed,
- 4 would be quarter speed, etc. A value of 0 will clear the slow
- motion mode. A value of 1 will cause video to play at the normal
- rate, but no audio decoding will occur.
-
- INPUTS
- mn_ReplyPort - pointer to message port that receives I/O request
- if the quick flag (IOF_QUICK) is clear
- io_Device - pointer to device node, must be set by (or copied
- from I/O block set by) OpenDevice function
- io_Unit - unit number to step
- io_Command - command number for MPEGCMD_SLOWMOTION
- iomr_Arg1 - see above.
- io_Flags - flags, must be cleared if not used:
- IOF_QUICK - (CLEAR) reply I/O request
-
- OUTPUTS
- io_Error - If non-zero, then an error of some kind occured.
- See <exec/errors.h> and <devices/mpeg.h> for more
- details.
-
- cd32mpeg.device/SetSCR cd32mpeg.device/SetSCR
-
- NAME
- SetSCR -- Set the current time
-
- SYNOPSIS
- success = SetSCR(unitPtr, clockValue)
- D0 D0
-
- BOOL SetSCR(struct Unit *unit, ULONG clockValue);
-
- FUNCTION
- This call is used to set the MPEG System Clock Reference for a MPEG
- device driver. This is usually used for synchronizing one device
- driver to another.
-
- INPUTS
- unit - The value in the io_Unit field of the IO request
- returned by OpenDevice().
- clockValue - The lower 32 bits of the SCR. The MPEG clock is
- specified to be 33 bits, but we only use 32 bits of
- that clock.
-
- OUTPUTS
- success - Whether or not the clock was set.
-
- BUGS
- The current hardware has a limitation in that you can only use
- this function to synchronize a raw video stream to another source.
-
-